using MediatR;
using UniversalAdmin.Domain.Entities.App;
using UniversalAdmin.Domain.Common;

namespace UniversalAdmin.Domain.DomainEvents;

public class RoleCreatedEvent : IDomainEvent, INotification
{
    public AppRole Role { get; }
    public DateTime OccurredOn { get; }
    public RoleCreatedEvent(AppRole role)
    {
        Role = role;
        OccurredOn = DateTime.UtcNow;
    }
}
public class RoleUpdatedEvent : IDomainEvent, INotification
{
    public AppRole Role { get; }
    public DateTime OccurredOn { get; }
    public RoleUpdatedEvent(AppRole role)
    {
        Role = role;
        OccurredOn = DateTime.UtcNow;
    }
}
public class RoleDeletedEvent : IDomainEvent, INotification
{
    public AppRole Role { get; }
    public DateTime OccurredOn { get; }
    public RoleDeletedEvent(AppRole role)
    {
        Role = role;
        OccurredOn = DateTime.UtcNow;
    }
} 